home *** CD-ROM | disk | FTP | other *** search
- Fractal Landscape Generator v1.3
- Copyright (c) 1992 Steve Anger
- This program is freely distributable
-
- FRGEN is a utility to generate fractal landscapes and other shapes
- using successive triangle sub-division. The fractal data can be output
- as POV-Ray 1.0 or Vivid 2.0 scene files or as raw triangle data. FRGEN
- only generates flat faceted triangles. To produce smoothed fractals you
- can output the fractal to RAW format and then run the data through the
- programs Sandpaper (Vivid, MTV, Rayshade) or raw2pov (POV-Ray).
-
- Changes in v1.3
- - modified for POV-Ray 1.0 and Vivid 2.0 output format.
-
- Changes in v1.2
- - replaced DKB output with PoV output.
- - added Vivid and raw triangle output formats.
-
- Changes in v1.1
- - you can now start the fractal generation from any arbitrarily
- specified set of base triangles instead of the simple square base
- which was used in v1.0. You can now generate fractal spheres, boxes,
- specifically shaped mountain ranges, etc.
-
- - the program will now create an efficient set of bounding shapes for
- the huge number of triangles generated. Scenes generated with v1.1
- will typically render 5 to 10 times faster than those generated with
- v1.0
-
- - the 3D projection is now much more accurate, plus you can specify the
- view-point and look-at coordinates instead of just the viewing angle.
-
-
- OPERATION
-
- Usage: frgen infile[.fr] outfile[.ext] [[-,/]options]
-
- Options: -sxnnn Scale noise in x direction by nnn (0.0 - 1.0)
- -synnn ' ' ' y ' ' ' ' '
- -sznnn ' ' ' z ' ' ' ' '
- -bxnnn Bias noise in x direction by nnn (-1.0 - 1.0)
- -bynnn ' ' ' y ' ' ' ' '
- -bznnn ' ' ' z ' ' ' ' '
- -vxnnn Set view_point x coord to nnn
- -vynnn ' ' y ' ' '
- -vznnn ' ' z ' ' '
- -lxnnn Set look_at x coord to nnn
- -lynnn ' ' y ' ' '
- -lznnn ' ' z ' ' '
- -ennn Use nnn as seed for random number generator
- -rnnn Maximum recursion depth of nnn
- -d Preview generated fractal on screen
- -o[n] Set output format (-op = PoV, -ov = Vivid, -or = raw)
- -x Exchange Y and Z coordinates on output
-
- ex. C>frgen sphere.fr fract.dat -d -r2
-
- infile[.fr] This is the file which contains the basic specifications
- for the fractal. The first non-comment line of this file
- is a list of default options for this fractal (comment
- lines begin with a semi-colon). This line must be
- present. The rest of the file contains a list of
- coordinates for the triangles making up the base from
- which the fractal grows. The coords of the triangles are
- specified one per line in the following format:
-
- ax ay az bx by bz cx cy cz [fix_ab fix_bc fix_ca]
-
- The numbers ax, ay, etc. are the x,y,z coordinates of the
- three vertices of the triangles. The three optional
- numbers fix_ab, fix_bc, and fix_ca can be either 1 or 0
- and specify whether that edge of the triangle is forced
- to stay within the plane of the triangle or allowed to
- move freely (1 = fixed, 0 = free). The most common use
- for 'fixed' edges is to force the outer edges of a
- mountain base to stay on the ground. If not specified,
- edges are assumed to be free.
-
- e.g.
- ; The default options are on the following line
- -sx0.1 -sy0.2 -sz0.1 -by0.5 -r4 -vx10 -vy5 -vz-10
- ; Two triangles in the x-z plane making up the base
- ; of a mountain
- +10.0 0.0 0.0 0.0 0.0 +10.0 -10.0 0.0 0.0 1 1 0
- -10.0 0.0 0.0 0.0 0.0 -10.0 +10.0 0.0 0.0 1 1 0
-
- Three sample input files are included:
- mountain.fr - Square based mountain.
- diamond.fr - Simple diamond shape made of 8 triangles.
- sphere.fr - Sphere made from 48 triangles.
-
- outfile[.ext] Output file to be created. The extension added will
- depend on the output format specified.
-
- -sx -sy -sz These three numbers specify the magnitude of the noise
- that will be used to perturb the triangles. Setting a
- scaling factor of 0.0 (-sx0 -sy0 -sz0) will generate a
- fractal that is unchanged from the starting shape while
- a scaling factor of 1.0 (-sx1.0 -sy1.0 -sz1.0) will
- create extremely distorted shapes. Values in the range
- 0.05 to 0.25 usually work well. Default values are -sx0.1
- -sy0.1 -sz0.1
-
- -bx -by -bz These numbers specify the amount by which the noise is
- biased in the corresponding x,y,z direction. A positive
- value will cause the noise to tend to move in the
- positive direction of the axis while a negative value
- will tend to move it in the opposite direction. e.g. If
- start with a triangle in the x-z plane, a setting of
- -bx0.0 -by0.5 -bz0.0 will cause the fractal to tend to
- bulge upward creating a mountain-like shape. Default
- values are -bx0.0 -by0.0 -bz0.0
-
- -vx -vy -vz The x, y, and z coordinates of the viewpoint. Used for
- screen preview only.
-
- -lx -ly -lz The x, y, and z coordinates of the point you are looking
- at. Used for screen preview only.
-
- -e You can use this option if you want to manually specify
- the seed used by the random number generator. This is
- useful if you want to reproduce the same fractal more
- than once but using different view points, numbers of
- triangles, etc.
-
- -r This specifies the number of times to sub-divide the
- triangles. Be careful when setting this number as the
- number of triangles generated will increase by a factor
- of 4 every time it is increased by 1. Default is -r3
-
- -d Turns the display preview on.
-
- -op Selects PoV output format (default).
-
- -ov Selects Vivid output format.
-
- -or Selects raw triangle output format.
-
- -x This option causes the Y and Z coordinates to be switched
- when writing the output file. This is useful if your
- rendering package uses the Z axis as vertical instead of
- the Y axis.
-
- CompuServe: 70714,3113
- YCCMR BBS: (708)358-5611
-